<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
  /**
   * Run the migrations.
   *
   * @return void
   */
  public function up()
  {
    Schema::create('roles_permissions', function (Blueprint $table) {
      $table->bigInteger('role_id')->unsigned()->unsigned();
      $table->bigInteger('permission_id')->unsigned()->unsigned();
      $table->foreign('role_id')->references('id')->on('roles')->onDelete('restrict');
      $table->foreign('permission_id')->references('id')->on('permissions')->onDelete('restrict');
      $table->primary(['role_id', 'permission_id']);
    });
  }

  /**
   * Reverse the migrations.
   *
   * @return void
   */
  public function down()
  {
    Schema::dropIfExists('roles_permissions');
  }
};
